home *** CD-ROM | disk | FTP | other *** search
/ PsL Monthly 1993 December / PSL Monthly Shareware CD-ROM (December 1993).iso / prgmming / dos / tools / 21help.com / 21H0.TXT < prev    next >
Encoding:
Text File  |  1988-10-04  |  50.9 KB  |  1,197 lines

  1.  
  2.                         INT 21H - CLASSES OF FUNCTIONS 
  3.  
  4. CHARACTER INPUT -                   01H 03H 06H 07H 08H 0AH 0BH 0CH          
  5. CHARACTER OUTPUT -                  02H 04H 05H 06H 09H                      
  6. DIRECTORY OPERATIONS -              39H 3AH 3BH 47H                           
  7. DISK CONTROL -                      0DH 0EH 19H 1BH 1CH 2EH 36H 54H 58H       
  8. DISK TRANSFER AREA ADDRESS -        1AH 2FH                                   
  9. DYNAMIC MEMORY ALLOCATION -         48H 49H 4AH 58H                           
  10. FILE OPERATIONS -                   0FH 10H 11H 12H 13H 16H 17H 23H 3CH 3DH
  11.                                     3EH 41H 43H 45H 46H 4EH 4FH 56H 57H 5AH
  12.                                     5BH                                       
  13. MISCELLANEOUS SYSTEM FUNCTIONS -    25H 26H 29H 30H 33H 35H 38H 44H 4BH
  14.                                     4DH 59H 62H                                
  15. NETWORK FUNCTIONS -                 44H 5EH 5FH                               
  16. PROGRAM TERMINATION -               00H 31H 4CH
  17. RECORD OPERATIONS -                 14H 15H 21H 22H 24H 27H 28H 3FH 40H 42H 5CH
  18. RESERVED (UNDOCUMENTED) FUNCTIONS - 18H 1DH 1EH 1FH 20H 32H 34H 37H           
  19.                                     50H 51H 52H 53H 55H 5DH 60H 61H           
  20. SYSTEM DATE AND TIME -              2AH 2BH 2CH 2DH                           
  21.  
  22. OTHER DOS INTERRUPTS -              20H 24H 25H 26H 27H 28H
  23. COMMON BIOS INTERRUPTS -            10H 11H 12H 13H 14H 16H 17H 1AH            
  24.                                                                              
  25.                                                                              
  26.  USE ARROW KEYS TO SELECT CLASS AND HIT <ENTER>                <ESC> TO EXIT$
  27. 000000"000000º
  28. ╙ z#▄å0000╜00Oéw╠ 00#00º$τ%
  29.  FUNCTION (HEX)                       DESCRIPTION
  30. ---------------  ------------------------------------------------------------$
  31.      01           CHARACTER INPUT WITH ECHO
  32.      03           AUXILIARY INPUT
  33.      06           DIRECT CONSOLE I/O
  34.      07           UNFILTERED CHARACTER INPUT - NO ECHO
  35.      08           CHARACTER INPUT - NO ECHO
  36.      0A           BUFFERED INPUT
  37.      0B           GET INPUT STATUS
  38.      0C           RESET INPUT BUFFER AND GET INPUT
  39.                                                                               
  40.                                                                               
  41.  
  42.  
  43.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  44. 0    00PPPPPPPP¼)-,1∞47T9H=α>
  45.      02           CHARACTER OUTPUT
  46.      04           AUXILIARY OUTPUT
  47.      05           PRINTER OUTPUT
  48.      06           DIRECT CONSOLE I/O
  49.      09           OUTPUT CHARACTER STRING
  50.                                                                                
  51.                                                                                
  52.  
  53.  
  54.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU  <ESC> TO EXIT$
  55. 000PPPPP╩+5.Æ/,1"A
  56.      39           CREATE SUBDIRECTORY
  57.      3A           DELETE SUBDIRECTORY
  58.      3B           SET CURRENT DIRECTORY
  59.      47           GET CURRENT DIRECTORY
  60.                                                                                
  61.                                                                                
  62.  
  63.  
  64.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU  <ESC> TO EXIT$
  65. 000PPPP╨G0K∞NïQ
  66.      0D           DISK RESET
  67.      0E           SET DEFAULT DISK DRIVE
  68.      19           GET DEFAULT DISK DRIVE
  69.      1B           GET ALLOCATION INFORMATION FOR DEFAULT DRIVE
  70.      1C           GET ALLOCATION INFORMATION FOR SPECIFIED DRIVE
  71.      2E           SET VERIFY FLAG
  72.      36           GET FREE DISK SPACE
  73.      54           GET VERIFY FLAG
  74.                                                 
  75.                                                                                
  76.                                                                                
  77.  
  78.  
  79.  USE ARROW KEYS TO SELECT AND HIT <ENTER>  <SPACE>-PRIOR MENU  <ESC> TO EXIT$
  80. 0    00PPPPPPPP█TQVtXπY]╗`·bòee00
  81.      1A           SET DISK TRANSFER ADDRESS
  82.      2F           GET DISK TRANSFER ADDRESS
  83.  
  84.  
  85.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU  <ESC> TO EXIT$
  86. 000PP╜fLi
  87.      48           ALLOCATE MEMORY
  88.      49           RELEASE MEMORY
  89.      4A           MODIFY MEMORY ALLOCATION
  90.      58           GET OR SET ALLOCATION STRATEGY
  91.                                                                               
  92.                                                                                
  93.  
  94.  
  95.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  96. 000PPPPnjvnnqªt
  97.      0F           OPEN FILE -  FCB
  98.      10           CLOSE FILE - FCB
  99.      11           SEARCH FOR FIRST MATCH - FCB
  100.      12           SEARCH FOR NEXT MATCH - FCB
  101.      13           DELETE FILE - FCB
  102.      16           CREATE OR TRUNCATE FILE - FCB
  103.      17           RENAME FILE - FCB
  104.      23           GET FILE SIZE - FCB
  105.      3C           CREATE OR TRUNCATE FILE - ASCIIZ
  106.      3D           OPEN FILE - ASCIIZ
  107.      3E           CLOSE FILE - HANDLE
  108.      41           DELETE FILE - ASCIIZ
  109.      43           GET OR SET FILE ATTRIBUTES - ASCIIZ
  110.      45           DUPLICATE HANDLE - HANDLE
  111.      46           FORCE DUPLICATE OF HANDLE - HANDLE
  112.      4E           SEARCH FOR FIRST MATCH - ASCIIZ
  113.      4F           SEARCH FOR NEXT MATCH - ASCIIZ
  114.      56           RENAME FILE - ASCIIZ
  115.      57           GET OR SET FILE DATE AND TIME - HANDLE
  116.      5A           CREATE TEMPORARY FILE
  117.      5B           CREATE NEW FILE
  118.  
  119.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  120. 000PPPPPPPPPPPPPPPPPPPPPHyí|O~╖ü1äwå█êcî
  121. Åmö·¢₧åá┌ñ/¿≤½ ▓Æ╢╗N┴>╞0
  122.      25           SET INTERRUPT VECTOR
  123.      26           CREATE PROGRAM SEGMENT PREFIX
  124.      29           PARSE FILENAME
  125.      30           GET MS-DOS VERSION NUMBER
  126.      33           GET OR SET CTL-BREAK FLAG
  127.      35           GET INTERRUPT VECTOR
  128.      38           GET OR SET COUNTRY
  129.      44           DEVICE DRIVER CONTROL
  130.      4B           EXECUTE PROGRAM
  131.      4D           GET RETURN CODE
  132.      59           GET EXTENDED ERROR INFORMATION
  133.      62           GET PROGRAM SEGMENT PREFIX ADDRESS
  134.                                      
  135.                                                                                
  136.                                                                              
  137.                                                                               
  138.  
  139.  
  140.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  141. 100PPPPPPPPPPPP¿V1╡╘
  142. ì &v*%É'b0000
  143.      44           DEVICE DRIVER CONTROL (IOCTL)
  144.      5E           GET MACHINE NAME/PRINTER INFORMATION
  145.      5F           ASSIGN LIST ENTRY
  146.                                                                                
  147.                                                                               
  148.                                                                               
  149.                                                                                
  150.  
  151.  
  152.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  153. 100PPP&i4\?
  154.      00           PROGRAM TERMINATE
  155.      31           PROGRAM TERMINATE AND STAY RESIDENT
  156.      4C           PROGRAM TERMINATE WITH RETURN CODE
  157.  
  158.  
  159.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  160. 100PPPES┬W╟T
  161.      14           SEQUENTIAL READ - FCB
  162.      15           SEQUENTIAL WRITE - FCB
  163.      21           RANDOM READ - FCB
  164.      22           RANDOM WRITE - FCB
  165.      24           SET RANDOM RECORD NUMBER - FCB
  166.      27           RANDOM BLOCK READ - FCB
  167.      28           RANDOM BLOCK WRITE - FCB
  168.      3F           READ FILE OR DEVICE - HANDLE
  169.      40           WRITE TO FILE OR DEVICE - HANDLE
  170.      42           MOVE FILE POINTER - HANDLE
  171.      5C           RECORD LOCKING - HANDLE
  172.          
  173.                                                                       
  174.                                                                               
  175.                                                                               
  176.  
  177.  
  178.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  179. 1 00PPPPPPPPPPPäZ{]`lcUfhΩk=p\tîxû~00
  180.      18          RESERVED 
  181.      1D          RESERVED 
  182.      1E          RESERVED 
  183.      1F          RESERVED 
  184.      20          RESERVED 
  185.      32          RESERVED 
  186.      34          RESERVED*
  187.      37          RESERVED*
  188.      50          RESERVED*
  189.      51          RESERVED*
  190.      52          RESERVED*
  191.      53          RESERVED 
  192.      55          RESERVED*
  193.      5D          RESERVED 
  194.      60          RESERVED 
  195.      61          RESERVED
  196.  
  197.  
  198.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  199. 100PPPPPPPPPPPPPPPPæÿ╩Ü¥<ƒuí░úΘÑ╓ºù¬∩½l¡#»\▒º│α╡╕
  200.      2A           GET SYSTEM DATE
  201.      2B           SET SYSTEM TIME
  202.      2C           GET SYSTEM TIME
  203.      2D           SET SYSTEM TIME
  204.                                                                               
  205.                                                                               
  206.  
  207.  
  208.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  209. 100PPPP2M┬N*P¥Q
  210.   INT 20H         PROGRAM TERMINATE
  211.   INT 25H         ABSOLUTE DISK READ
  212.   INT 26H         ABSOLUTE DISK WRITE
  213.   INT 27H         TERMINATE AND STAY RESIDENT
  214.   INT 28H         INTERNAL VECTOR  (Undocumented)  
  215.  
  216.  
  217.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  218. 100PPPPPΦà}çUÄ-òR║0
  219.   INT 10H          VIDEO SERVICES - Functions 00H - 08H
  220.   INT 10H          VIDEO SERVICES - Functions 09H - 0EH
  221.   INT 10H          VIDEO SERVICES - Functions 0FH - 1CH
  222.   INT 11H          EQUIPMENT DETERMINATION
  223.   INT 12H          MEMORY SIZE DETERMINATION
  224.   INT 13H          DISK SERVICES
  225.   INT 14H          SERIAL PORT SERVICES
  226.   INT 16H          KEYBOARD SERVICES
  227.   INT 17H          PRINTER SERVICES
  228.   INT 1AH          TIME OF DAY SERVICES
  229.  
  230.  
  231.       
  232.  USE ARROW KEYS TO SELECT AND HIT <ENTER>   <F1> - PRIOR MENU   <ESC> TO EXIT$
  233. 2 00PPPPPPPPPP±l!|%Å&╙54BòHyN
  234. FUNCTION:      00H      PROGRAM TERMINATE 
  235.  
  236. DESCRIPTION:   One of several methods to terminate a program; flushes all file 
  237.                buffers to disk; restores exit addresses; other methods of 
  238.                terminating a program are preferred  
  239.  
  240. CALL:          AH = 0 
  241.                CS = PSP segment 
  242.  
  243. RETURNS:       Nothing 
  244.  
  245. SEE ALSO:      Functions 4CH and 31H$
  246. FUNCTION:      01H      CHARACTER INPUT WITH ECHO 
  247.  
  248. DESCRIPTION:   Waits for a character from the standard input (keyboard) and 
  249.                then echoes it to the standard output (display); can be 
  250.                redirected; recognizes Ctl-C
  251.  
  252. CALL:          AH = 01H 
  253.  
  254. RETURNS:       AL = 8 bit ASCII code for character input
  255.                If AL = 0, it signifies that extended ASCII character input; 
  256.                call function again to get 8 bit scan code
  257.                
  258. SEE ALSO:      Functions 06H, 07H, 3FH and 08H$ 
  259. FUNCTION:      02H      CHARACTER OUTPUT 
  260.  
  261. DESCRIPTION:   Output a character to standard output (display); output can be 
  262.                redirected; recognizes Ctl-C.
  263.  
  264. CALL:          AH = 02H 
  265.                DL = 8 bit ASCII code to be output
  266.  
  267. RETURNS:       Nothing 
  268.  
  269. SEE ALSO:      Function 40H$ 
  270. FUNCTION:      03H      AUXILIARY INPUT
  271.  
  272. DESCRIPTION:   Waits for a character from the standard auxiliary (serial 
  273.                port - COM1); recognizes Ctl-C; can be redirected.
  274.  
  275. CALL:          AH = 3
  276.  
  277. RETURNS:       AL = 8 bit ASCII code input
  278.  
  279. SEE ALSO:      Function 3FH and ROM BIOS INT 14H$
  280. FUNCTION:      04H      AUXILIARY OUTPUT
  281.  
  282. DESCRIPTION:   Output a character to the standard auxiliary (serial port - 
  283.                COM1); recognizes Ctl-C; can be directed.
  284.  
  285. CALL:          AH = 04H
  286.                DL = 8 bit ASCII code of character to be output
  287.  
  288. RETURNS:       Nothing
  289.  
  290. SEE ALSO:      Function 40H and ROM BIOS INT 14H$
  291. FUNCTION:      05H      PRINTER OUTPUT
  292.  
  293. DESCRIPTION:   Sends a character to the standard list device (PRN or LPT1);  
  294.                recognizes Ctl-C; waits until device is ready to accept 
  295.                character; can be redirected. 
  296.  
  297. CALL:          AH = 05H
  298.                DL = 8 bit ASCII code of character to be output
  299.  
  300. RETURNS:       Nothing
  301.  
  302. SEE ALSO:      Function 40H or ROM BIOS INT 17H$
  303. FUNCTION:      06H      DIRECT CONSOLE I/O
  304.  
  305. DESCRIPTION:   Reads a character from the standard input (keyboard) without 
  306.                echoing or outputs one to the standard output (display); does 
  307.                not recognize Ctl-C, Ctl-Break or any other control codes - all 
  308.                are passed on to the calling program.
  309.                 
  310. CALL:          AH = 06H
  311.                DL = function requested
  312.                     0ffh if input requested
  313.                     8 bit ASCII character code if output requested
  314.  
  315. RETURNS:       If output requested, nothing
  316.                If input requested and character received
  317.                         Zero Flag = clear
  318.                                AL = 8 bit ASCII code of character received
  319.                If input requested and character not received
  320.                         Zero Flag = Set$
  321.  
  322. SEE ALSO:      For input - 01H, 07H, 08H, 0AH, 3FH
  323.                For output - 02H, 09H, 40H$
  324. FUNCTION:      07H      UNFILTERED CHARACTER INPUT WITHOUT ECHO
  325.  
  326. DESCRIPTION:   Waits for and reads a character from the standard input 
  327.                (keyboard), does not copy it to standard output (display); can 
  328.                be redirected; does not recognize Ctl-C or Ctl-Break; 
  329.  
  330. CALL:          AH = 07H 
  331.  
  332. RETURNS:       AL = 8 bit ASCII code for character input
  333.                If AL = 0, it signifies that extended ASCII character input; 
  334.                call function again to get 8 bit scan code
  335.                
  336. SEE ALSO:      Function 3FH$
  337. FUNCTION:      08H      CHARACTER INPUT WITHOUT ECHO
  338.  
  339. DESCRIPTION:   Waits for and reads a character from the standard input 
  340.                (keyboard), does not copy it to standard output (display); can 
  341.                be redirected; recognizes Ctl-C and Ctl-Break; 
  342.  
  343. CALL:          AH = 08H 
  344.  
  345. RETURNS:       AL = 8 bit ASCII code for character input
  346.                If AL = 0, it signifies that extended ASCII character input; 
  347.                call function again to get 8 bit scan code
  348.                
  349. SEE ALSO:      Function 01H, 06H, 0AH, 0CH, 3FH$
  350. FUNCTION:      0AH      BUFFERED INPUT
  351.  
  352. DESCRIPTION:   Reads a string of bytes from the standard input (keyboard), 
  353.                including the ending ASCII carriage return, and places them in a 
  354.                user defined buffer; echoes each character to the standard 
  355.                output (display); recognizes Ctl-C and Ctl-Break; can be 
  356.                redirected.  
  357.  
  358. CALL:          AH = 0AH
  359.                DS:DX = Segment:Offset of Buffer
  360.                        First byte of buffer specifies the maximum number 
  361.                        of bytes the buffer can hold (0ffh maximum) and must be 
  362.                        supplied by user; function will only add characters to 
  363.                        the buffer until the next to last position; it will 
  364.                        ignore additional characters until a carriage return is 
  365.                        entered.
  366.  
  367. RETURNS:       Length of the entry is placed, by the function, into the second
  368.                byte of the buffer (DX + 1);$
  369. FUNCTION:      0BH      GET INPUT STATUS
  370.  
  371. DESCRIPTION:   Checks whether a character is available from the standard input 
  372.                (keyboard);can be redirected; recognizes Ctl-C and Ctl-Break
  373.  
  374. CALL:          AH = 0BH
  375.  
  376. RETURNS:       AL = 0      no character available
  377.                   = 0FFH   character available; must be read by a call to the 
  378.                            proper function.$
  379. FUNCTION:      0CH      RESET INPUT BUFFER AND GET INPUT
  380.  
  381. DESCRIPTION:   Clears the standard input (keyboard) buffer and invokes one of 
  382.                the character input functions.
  383.  
  384. CALL:          AH = 0CH
  385.                AL = number of character input function to be invoked after 
  386.                clearing input buffer; must be 01H, 06H, 07H 08H or 0AH.
  387.  
  388.                If AL = 0AH, then
  389.                   DS:DX = Segment:Offset of Buffer
  390.  
  391. RETURNS:       If AL = 0AH, nothing returned
  392.  
  393.                If AL = any other function, AL = 8 bit ASCII code of input$
  394. FUNCTION:      09H      OUTPUT A CHARACTER STRING
  395.  
  396. DESCRIPTION:   Sends a character string to the standard output (display); 
  397.                string must be terminated with a 'dollar sign' (ASCII 24); 
  398.                can be redirected.
  399.  
  400. CALL:          AH = 09H
  401.                DS:DX = Segment:Offset of string to be displayed
  402.  
  403. RETURNS:       Nothing
  404.  
  405. SEE ALSO:      Function 40H$
  406. FUNCTION:      59H  GET EXTENDED ERROR INFORMATION 
  407.  
  408. DESCRIPTION:   Obtains information after unsuccessful INT 21H call 
  409.  
  410. SET:           AH = 50H  
  411.                BX = 0 
  412.  
  413. RETURNS:       AX = extended error code  (0-no error)
  414. 1-invalid function             2-file not found      3-path not found 
  415. 4-too many open files          5-access denied       6-invalid handle 
  416. 7-MCB destroyed                8-insufficient memory 9-invalid MCB 
  417. 0AH-invalid environment      0BH-invalid format      0CH-invalid access code 
  418. 0DH-invalid data             0EH-RESERVED            0FH-invalid drive 
  419. 10H-remove current directory 11H-not same device     12H-no more files 
  420. 13H-write protected          14H-unknown unit        15H-drive not ready 
  421. 16H-unknown command          17H-CRC error           18H-bad request structure  
  422. 19H-seek error               1AH-unknown medium type 1BH-sector not found 
  423. 1CH-printer out of paper     1DH-write fault         1EH-read fault 
  424. 20H-sharing violation        21H-lock violation      22H-disk change invalid 
  425. 23H-FCB unavailable          24-4FH-RESERVED         50H-file already exists 
  426. 51H-RESERVED                 52H-cannot make directory 53H-fail on INT 24H 
  427.                 BH = error class
  428.                 BL = recommended action
  429.                 CH = error locus$
  430. FUNCTION:      39H      CREATE SUBDIRECTORY
  431.  
  432. DESCRIPTION:   Creates a subdirectory using the specified drive and path; 
  433.                specified drive/path string must be in ASCIIZ format; that is, 
  434.                terminated with an ASCII '0'; call will fail if any element of 
  435.                the path does not exist, if a subdirectory of the same name 
  436.                already exists or if the parent directory is the root directory 
  437.                and is full.
  438.               
  439. CALL:          AH = 39H
  440.                DS:DX = Segment:Offset of ASCIIZ path specification
  441.  
  442. RETURNS:       If successful:
  443.                     Carry Flag = Clear
  444.                If unsuccessful:
  445.                     Carry Flag = Set
  446.                     AX = Error Code
  447.                          3   -   if path not found
  448.                          5   -   if access denied$
  449. FUNCTION:      3AH      DELETE SUBDIRECTORY
  450.  
  451. DESCRIPTION:   Removes a subdirectory from the specified drive and path;
  452.                specified drive/path string must be in ASCIIZ format; that is, 
  453.                terminated with an ASCII '0'; call will fail if any element of 
  454.                the path does not exist, if the specified subdirectory is the 
  455.                current directory or if the specified subdirectory still 
  456.                contains files.
  457.  
  458. CALL:          AH = 3AH
  459.                DS:DX = Segment:Offset of ASCIIZ path specification
  460.  
  461. RETURNS:       If successful:
  462.                     Carry Flag = Clear
  463.                If unsuccessful:
  464.                     Carry Flag = Set
  465.                     AX = Error Code
  466.                          3   -   if path not found
  467.                          5   -   if access denied
  468.                          6   -   if current directory
  469.                          16  -   if current directory$
  470. FUNCTION:      3BH      SET CURRENT DIRECTORY
  471.  
  472. DESCRIPTION:   Sets the current or default directory using the specified drive 
  473.                and path; specified drive/path string must be in ASCIIZ format;
  474.                that is, terminated with an ASCII '0'; call will fail if any 
  475.                element of the path does not exist; 
  476.  
  477. CALL:          AH  = 3BH
  478.                DS:DX = Segment:Offset of ASCIIZ path specification
  479.  
  480. RETURNS:       If successful:
  481.                     Carry Flag = Clear
  482.                If unsuccessful:
  483.                     Carry Flag = Set
  484.                     AX = Error Code
  485.                          3   -   if path not found$
  486. FUNCTION:      47H      GET CURRENT DIRECTORY
  487.  
  488. DESCRIPTION:   Returns an ASCIIZ string that specifies the path from the root 
  489.                directory to the current directory, inclusive; returned string 
  490.                does not include the drive or a leading '\'; the call fails if 
  491.                the drive code is invalid.
  492.  
  493. CALL:          AH = 47H
  494.                DL = drive code (0=default, 1=A, etc.)
  495.                DS:SI = Segment:Offset of a 64 byte buffer to hold the returned 
  496.                        string 
  497. RETURNS:       If successful:
  498.                     Carry Flag = Clear
  499.                Buffer contains the complete path as an ASCIIZ string 
  500.  
  501.                If unsuccessful:
  502.                     Carry Flag = Set
  503.                     AX = Error Code
  504.                          0FFH   -   if drive specification invalid$
  505. FUNCTION:      0DH      DISK RESET
  506.  
  507. DESCRIPTION:   Flushes all file buffers; that is, it writes the contents of 
  508.                all file buffers to the appropriate file on the disk; does not 
  509.                update directory entries, so all files must be closed to insure 
  510.                their entries are updated.
  511.  
  512. CALL:          AH = 0DH
  513.  
  514. RETURNS:       Nothing$
  515. FUNCTION:      0EH      SET DEFAULT DISK DRIVE
  516.  
  517. DESCRIPTION:   Sets a specified drive to be the current, or default, disk 
  518.                drive; returns total number of logical (floppy, hard disk 
  519.                partitions, RAM, etc) drives in the system; this call considers 
  520.                logical drive 0 to be the A drive whereas some other functions 
  521.                consider drive 0 to be the current drive.   
  522.  
  523. CALL:          AH =0EH
  524.                DL = drive code (0=A, 1=B, etc.)
  525.  
  526. RETURNS:       AL = number of logical drives$
  527. FUNCTION:      19H      GET DEFAULT DISK DRIVE
  528.  
  529. DESCRIPTION:   Returns the drive code for the current, or default, disk drive;
  530.                this call considers logical drive 0 to be the A drive whereas 
  531.                some other functions consider drive 0 to be the current drive.
  532.  
  533. CALL:          AH = 19H
  534.  
  535. RETURNS:       AL = drive code (0=A, 1=B, etc.)$
  536. FUNCTION:      1BH      GET ALLOCATION INFORMATION FOR DEFAULT DRIVE
  537.  
  538. DESCRIPTION:   Returns selected information about the default drive and a 
  539.                pointer to the identification byte in its File Allocation Table 
  540.                (FAT); can be used to calculate total capacity of the default 
  541.                drive; from the FAT identification byte, it can be determined 
  542.                whether the drive is a floppy or a hard disk. 
  543.  
  544. CALL:          AH = 1BH
  545.  
  546. RETURNS:       AL = number of sectors per cluster on the default drive
  547.                CX = size, in bytes, of each physical sector on the default
  548.                DX = total number of clusters on the default drive
  549.                DS:BX = Segment:Offset of the FAT identification byte
  550.  
  551. SEE ALSO:      Function 1CH 36H$
  552. FUNCTION:      1CH      GET ALLOCATION INFORMATION FOR SPECIFIED DRIVE
  553.  
  554. DESCRIPTION:   Returns selected information about a specified drive and a 
  555.                pointer to the identification byte in its File Allocation Table 
  556.                (FAT); can be used to calculate total capacity of the drive; 
  557.                from the FAT identification byte, it can determined whether 
  558.                the drive is a floppy or a hard disk. 
  559.  
  560. CALL:          AH = 1CH
  561.                DL = drive code (0=default, 1=A, etc.)
  562.  
  563. RETURNS:       If specified drive is valid
  564.                AL = number of sectors per cluster on the drive
  565.                CX = size, in bytes, of each physical sector on the drive
  566.                DX = total number of clusters on the drive
  567.                DS:BX = Segment:Offset of the FAT identification byte
  568.  
  569.                If specified drive is invalid
  570.                      AL = 0FFH
  571.  
  572. SEE ALSO:      Function 1BH 36H$
  573. FUNCTION:      2EH      SET VERIFY FLAG
  574.  
  575. DESCRIPTION:   Programs DOS to automatically verify each disk write; 
  576.                verification entails checking that each written byte can be 
  577.                read, not that it is the same as the source; verification slows 
  578.                down the writing process, so it should be used only for 
  579.                critical data. 
  580.  
  581. CALL:          AH = 2EH
  582.                AL = 00     if toggling verification off
  583.                AL = 01     if toggling verification on
  584.  
  585. RETURNS:       Nothing
  586.  
  587. SEE ALSO:      Function 54H$
  588. FUNCTION:      36H      GET FREE DISK SPACE
  589.  
  590. DESCRIPTION:   Returns selected information about a specified disk drive from 
  591.                which the free space and capacity of the disk can be 
  592.                calculated; supercedes functions 1BH and 1CH. 
  593.  
  594. CALL:          AH = 36H
  595.                DL = drive code (0=default, 1=A, etc.)
  596.  
  597. RETURNS:       If valid drive code
  598.                AX = sectors per cluster
  599.                BX = number of free clusters
  600.                CX = bytes per sector
  601.                DX = total number of clusters on drive
  602.  
  603.                If drive code is invalid
  604.                AX = 0FFFFH
  605.  
  606. SEE ALSO:      Functions 1BH 1CH$
  607. FUNCTION:      54H      GET VERIFY FLAG
  608.  
  609. DESCRIPTION:   Returns the current value of the verify flag.
  610.  
  611. CALL:          AH = 54H
  612.  
  613. RETURNS:       AL = Current value of verify flag
  614.                     00  if verify on
  615.                     01  if verify is off
  616.  
  617. SEE ALSO:      Function 2EH$
  618. FUNCTION:      1AH      SET DISK TRANSFER ADDRESS
  619.  
  620. DESCRIPTION:   Specifies the memory address to be used for disk operations 
  621.                where an FCB is specified; the default DTA is offset 80H within 
  622.                the program segment prefix (PSP);  the memory set aside for the 
  623.                DTA must be sufficiently large to handle the required disk 
  624.                operations;  this function must also be used prior to calling 
  625.                the directory functions 11H, 12H 4EH and 4FH.
  626.                 
  627. CALL:          AH = 1AH
  628.                DS:DX = Segment:Offset of DTA
  629.  
  630. RETURNS:       Nothing
  631.  
  632. SEE ALSO:      Function 2FH$
  633. FUNCTION:      2FH      GET DISK TRANSFER ADDRESS
  634.  
  635. DESCRIPTION:   Returns the address of the current disk transfer area for disk 
  636.                operations using an FCB.
  637.  
  638. CALL:          AH = 2FH
  639.  
  640. RETURNS:       ES:BX = Segment:Offset of current DTA
  641.  
  642. SEE ALSO:      Function 1AH$
  643. FUNCTION:      48H      ALLOCATE MEMORY
  644.  
  645. DESCRIPTION:   Tries to allocate a specified amount of memory and returns a 
  646.                pointer to the beginning of the allocated block (offset 0); 
  647.                if insufficient memory is available, DOS returns the amount 
  648.                available; when a .COM file is loaded all available memory is 
  649.                automatically allocated to it, so any call to this function 
  650.                will fail; 
  651.  
  652. CALL:          AH = 48H
  653.                BX = number of paragraphs (16 bytes) of memory needed
  654.  
  655. RETURNS:       If successful
  656.                         Carry Flag = Clear
  657.                                 AX = segment of allocated block
  658.  
  659.                If unsuccessful
  660.                         Carry Flag = Set
  661.                            AX = Error Code
  662.                                 7     if memory control blocks destroyed
  663.                                 8     if insufficient memory
  664.                            BX = size (paragraphs) of largest block available$
  665. FUNCTION:      49H      RELEASE MEMORY
  666.  
  667. DESCRIPTION:   Release a block of memory previously allocated by function 48H; 
  668.                the function will fail if the specified address does not belong 
  669.                to the program releasing it or if the specified segment was not 
  670.                allocated by function 48H.
  671.  
  672. CALL:          AH = 49H
  673.                ES = segment of block to be released
  674.  
  675. RETURNS:       If successful
  676.                         Carry Flag = Clear
  677.                
  678.                If unsuccessful
  679.                         Carry Flag = Set
  680.                            AX = Error Code
  681.                                 7     if memory control blocks destroyed
  682.                                 9     if incorrect segment in ES$
  683. FUNCTION:      4AH      MODIFY MEMORY ALLOCATION  (SET BLOCK)
  684.  
  685. DESCRIPTION:   Changes the size of a memory block previously allocated by 
  686.                function 48H; most commonly used to reduce the size of a .COM 
  687.                program after loading.
  688.  
  689. CALL:          AH = 4AH
  690.                BX = new block size in paragraphs ( 1 paragraph = 16 bytes)
  691.                ES = segment of block to be modified
  692.  
  693. RETURNS:       If successful
  694.                         Carry Flag = Clear
  695.  
  696.                If unsuccessful
  697.                         Carry Flag = Set
  698.                                 AX = Error Code
  699.                                      7  if memory control block destroyed
  700.                                      8  if insufficient memory
  701.                                      9  if incorrect segment in ES$
  702. FUNCTION:      58H      GET OR SET MEMORY ALLOCATION STRATEGY
  703.  
  704. DESCRIPTION:   Returns or changes the current memory allocation strategy 
  705.                used by DOS; strategies are:  1. First Fit - DOS searches from 
  706.                low addresses to high, allocating first block large enough to 
  707.                satisfy the request (default);  2. Best Fit - searches all 
  708.                memory to find the smallest block that satisfies the request;  
  709.                3. Last Fit - DOS searches from high addresses to low, 
  710.                allocating the first block large enough to satisfy the request.
  711.  
  712. CALL:          If getting strategy code
  713.                   AH = 58H
  714.                   AL = 00
  715.                If setting strategy code
  716.                   AH = 58H
  717.                   AL = 1
  718.                   BX = strategy code
  719.                        00  if first fit, 01  if best fit, 02  if last fit
  720. RETURNS:       If successful
  721.                         Carry Flag = Clear
  722.                If unsuccessful
  723.                         Carry Flag = Set
  724.                                 AX = Error Code
  725.                                      1  invalid function code in AL or BX$
  726. FUNCTION:      0FH      OPEN FILE  -  FCB
  727.  
  728. DESCRIPTION:   Opens a file and makes it available for read/write operations; 
  729.                prior to any actual operations, the FCB must be adjusted to 
  730.                reflect any changes from the default (record size); depending 
  731.                on the type of operation, random or sequential, the proper 
  732.                record field in the FCB must also be set; essentially 
  733.                superceded by function 3DH
  734.  
  735. CALL:          AH = 0FH
  736.                DS:DX = Segment:Offset of unopened FCB
  737.  
  738. RETURNS:       If successful
  739.                         AX = 0
  740.                         FCB filled with specified drive, current block, 
  741.                         record size, file size, date, and time.
  742.  
  743.                If unsuccessful
  744.                         AL = 0FFH
  745.  
  746. SEE ALSO:      Function 3DH$
  747. FUNCTION:      10H      CLOSE FILE  -  FCB
  748.  
  749. DESCRIPTION:   Closes a file and updates the directory entries if its been 
  750.                modified; essentially superceded by function 3EH.
  751.  
  752. CALL:          AH = 10H
  753.                DS:DX = Segment:Offset of corresponding FCB
  754.  
  755. RETURNS:       AL = 0        if directory update successful
  756.                   = 0FFH     if directory entry not found
  757.  
  758. SEE ALSO:      Function 3EH$
  759. FUNCTION:      11H      SEARCH FOR FIRST MATCH  -  FCB
  760.  
  761. DESCRIPTION:   Searches the current directory on the designated disk drive for 
  762.                a matching filename; use function 1AH to set the DTA to a 
  763.                properly sized buffer; use of wild card(s) '?' permitted in 
  764.                filename; an extended FCB must be used to search for files with 
  765.                anything but a normal attribute (system, read only, hidden, 
  766.                etc.); essentially superceded by function 4EH. 
  767.  
  768. CALL:          AH = 11H
  769.                DS:DX = Segment:Offset of corresponding FCB
  770.  
  771. RETURNS:       If successful (match found) 
  772.                         AL = 0
  773.                              Buffer at current DTA set up as unopened FCB
  774.  
  775.                If unsuccessful (no match found)
  776.                         AL = 0FFH
  777.  
  778. SEE ALSO:      Function 4EH$
  779. FUNCTION:      12H      SEARCH FOR NEXT MATCH  -  FCB
  780.  
  781. DESCRIPTION:   After a prior successful call to function 11H or 12H, returns 
  782.                the next matching filename, if any; essentially superceded by 
  783.                function 4FH.
  784.                 
  785. CALL:          AH = 12H
  786.                DS:DX = Segment:Offset of corresponding FCB
  787.  
  788. RETURNS:       If successful (another match found)
  789.                         AL = 0
  790.                              Buffer at current DTA set up as unopened FCB
  791.  
  792.                If unsuccessful (no more matches found)
  793.                         AL = 0FFH
  794.  
  795. SEE ALSO:      Function 4FH$
  796. FUNCTION:      13H      DELETE FILE  -  FCB
  797.  
  798. DESCRIPTION:   Delete all matching files from the current subdirectory; use of 
  799.                wild card(s) '?' permitted in filename; if more than 1 match 
  800.                found, all are deleted; essentially superceded by function 41H. 
  801.  
  802. CALL:          AH = 13H
  803.                DS:DX = Segment:Offset of corresponding FCB
  804.  
  805. RETURNS:       AL = 0      if file(s) deleted
  806.                     0FFH   if no matching files were found or all matching 
  807.                            files were read only.
  808.  
  809. SEE ALSO:      Function 41H$
  810. FUNCTION:      16H      CREATE OR TRUNCATE FILE  -  FCB
  811.  
  812. DESCRIPTION:   Creates a new file in the current subdirectory or truncates an 
  813.                existing file to zero length (all data is lost); no call to 
  814.                open the file is necessary; essentially superceded by function 
  815.                3CH. 
  816.                  
  817. CALL:          AH = 16H
  818.                DS:DX = Segment:Offset of unopened FCB
  819.  
  820. RETURNS:       AL = 0       if file created
  821.                     0FFH    if file not created (directory full or no existing 
  822.                             file)
  823.  
  824. SEE ALSO:      Function 3CH$
  825. FUNCTION:      17H      RENAME FILE  -  FCB
  826.  
  827. DESCRIPTION:   Changes the name of an existing file in the current subdirectory;
  828.                requires the use of a special FCB containing the drive number, 
  829.                current filename and (at offset 11H in the FCB) the new 
  830.                filename; use of wild card(s) '?' permitted in the filenames; if 
  831.                used, the renamed file(s) will maintain the logic governing 
  832.                wild cards; if the new filename matches an existing filename, 
  833.                the function terminates; essentially superceded by function 56H.
  834.  
  835. CALL:          AH = 17H
  836.                DS:DX = Segment:Offset of a special FCB
  837.  
  838. RETURNS:       AL = 0          if file(s) renamed
  839.                     0FFH       if no matching file(s) found or a new filename
  840.                                matches an existing one
  841.  
  842. SEE ALSO:      Function 56H$
  843. FUNCTION:      23H      GET FILE SIZE IN RECORDS  -  FCB
  844.  
  845. DESCRIPTION:   Returns in the FCB the file size, in records, of the specified 
  846.                file; FCB must have the record size filled in before calling 
  847.                this function.
  848.  
  849. CALL:          AH = 23H
  850.                DS:DX = Segment:Offset of unopened FCB
  851.  
  852. RETURNS:       If successful
  853.                         AL = 0
  854.                              FCB's random record field (offset 21H) contains 
  855.                              the number of records in the file, rounded up to reflect 
  856.                              partial records.
  857.  
  858.                If unsuccessful
  859.                         AL = 0FFH$
  860. FUNCTION:      3CH      CREATE OR TRUNCATE FILE  -  ASCIIZ
  861.  
  862. DESCRIPTION:   Given an ASCIIZ filespec, creates a new file in the designated 
  863.                or default subdirectory on the designated or default drive or, 
  864.                if the specified file exists, it is opened, but its length is 
  865.                truncated to zero; returns a 16 bit handle to be used for 
  866.                further file operations; function fails if: 1. Some element of 
  867.                path does not exist.  2.  If the root directory is specified 
  868.                and it is full.  3.  The specified file exists, but has read 
  869.                only attribute. 
  870. CALL:          AH = 3CH
  871.                CX = file attribute    00  if normal 
  872.                                       01 if read only 
  873.                                       02 if hidden 
  874.                                       03 if system
  875.                DS:DX = Segment:Offset of ASCIIZ file specification
  876. RETURNS:       if successful
  877.                   Carry Flag = Clear
  878.                     AX = 16 bit handle
  879.                if unsuccessful
  880.                   Carry Flag = Set
  881.                     AX = error code   3 - if path not found, 
  882.                                       4 - if no handle available
  883.                                       5 - if access denied or directory is full
  884. SEE ALSO:      Function 43H, 5AH, 5BH$
  885. FUNCTION:      3DH      OPEN FILE  -   ASCIIZ
  886.  
  887. DESCRIPTION:   Given an ASCIIZ filespec, creates a new file in the designated 
  888.                or default subdirectory on the designated or default drive; 
  889.                returns a 16 bit handle to be used for further file operations;
  890.                 
  891. CALL:          AH = 3DH
  892.                DS:DX = Segment:Offset of ASCIIZ file specification
  893.                AL = access and (for MS-DOS 3+) file sharing mode
  894.                 (3+)bit 7 = inheritance flag  0 if inherited by child process
  895.                                               1 if for current process only
  896.                 (3+)bits 4-6 = sharing mode  000 if compatability mode
  897.                                              001 if read/write access denied
  898.                                              010 if write access denied
  899.                                              011 if read access denied
  900.                                              100 if full access allowed
  901.                 (3+)bit 3  reserved - should be 0
  902.                     bits 0-2 = access mode   000 if read access
  903.                                              001 if write access
  904.                                              010 if read/write access
  905.  
  906.                
  907.        ANY KEY FOR MORE       <F1> - PRIOR MENU       <ESC> TO EXIT@ 
  908. RETURNS:       if successful
  909.                   Carry Flag = Clear
  910.                     AX = 16 bit handle
  911.                if unsuccessful
  912.                   Carry Flag = Set
  913.                     AX = error code   1 - if invalid function code
  914.                                       2 - if file not found
  915.                                       3 - if path not found, 
  916.                                       4 - if no handle available
  917.                                       5 - if access denied 
  918.                                     0CH - if file access mode invalid
  919.  
  920. SEE ALSO:      Function 43H, 57H$
  921. FUNCTION:      3EH      CLOSE FILE  -  HANDLE
  922.  
  923. DESCRIPTION:   Given a handle corresponding to a file opened by a successful 
  924.                function call (3DH, 3CH, 5AH OR 5BH), flushes all DOS buffers 
  925.                to disk, closes the file, releases the handle and if necessary, 
  926.                updates the file's directory entry.
  927.  
  928. CALL:          AH = 3EH
  929.                BX = handle
  930.  
  931. RETURNS:       if successful
  932.                   Carry Flag = Clear
  933.                if unsuccessful
  934.                   Carry Flag = Set
  935.                           AX = error code 
  936.                                0    if invalid handle or not open$
  937. FUNCTION:      41H      DELETE FILE  -  ASCIIZ
  938.  
  939. DESCRIPTION:   Deletes a file from a specified or default drive and directory.
  940.  
  941. CALL:          AH = 41H
  942.                DS:DX = Segment:Offset of ASCIIZ file specification
  943.  
  944. RETURNS:       if successful
  945.                   Carry Flag = Clear
  946.                if unsuccessful
  947.                   Carry Flag = Set
  948.                           AX = error code 
  949.                                2     if file not found
  950.                                3     if access denied$
  951. FUNCTION:      43H      GET OR SET FILE ATTRIBUTES  -  ASCIIZ
  952.  
  953. DESCRIPTION:   Gets or sets the attributes of a file; cannot change volume 
  954.                label bit or subdirectory bit.
  955.  
  956. CALL:          AH = 43H
  957.                AL = 00H    if get the attribute
  958.                   = 01H    if set the attribute
  959.                CX = new attribute
  960.                     bit 5 - archive bit
  961.                     bit 2 - system bit
  962.                     bit 1 - hidden bit
  963.                     bit 0 - read only bit
  964.                DS:DX = Segment:Offset of ASCIIZ file specification
  965.  
  966. RETURNS:       if successful
  967.                   Carry Flag = Clear
  968.                           CX = attribute if call was to get attribute
  969.                if unsuccessful
  970.                   Carry Flag = Set
  971.                           AX = error code 
  972.                                1     if invalid function code
  973.                                2     if file not found       
  974.                                3     if path not found of file does not exist
  975.                                5     if attribute can't be changed$
  976. FUNCTION:      45H      DUPLICATE HANDLE  -  HANDLE
  977.  
  978. DESCRIPTION:   Given a handle for an open file or device, returns a new handle 
  979.                that refers to the same file or device; file pointer moves 
  980.                using one handle results in a change of the file pointer in the 
  981.                other handle; can be used to redirect standard input (handle 0) 
  982.                or standard output (handle 1).
  983.                
  984.  
  985. CALL:          AH = 45H
  986.                BX = handle
  987.  
  988. RETURNS:       if successful
  989.                   Carry Flag = Clear
  990.                           AX = new file handle
  991.                if unsuccessful
  992.                   Carry Flag = Set
  993.                           AX = error code 
  994.                                4     if no handle available
  995.                                6     if handle invalid or not open$
  996. FUNCTION:      46H      FORCE DUPLICATE OF HANDLE  -  HANDLE
  997.  
  998. DESCRIPTION:   Given two file handles, makes the second handle refer to the 
  999.                same open file at the same location as the first;  if second 
  1000.                handle already refers to an open file, that file is closed; if 
  1001.                file pointer for one handle is changed by a function call, the 
  1002.                file pointer for the other is also changed; can be used to 
  1003.                redirect standard input (handle 0) or standard output (handle 
  1004.                1). 
  1005.  
  1006. CALL:          AH = 46H
  1007.                BX = first handle
  1008.                CX = second handle
  1009.  
  1010. RETURNS:       if successful
  1011.                   Carry Flag = Clear
  1012.                if unsuccessful
  1013.                   Carry Flag = Set
  1014.                           AX = error code 
  1015.                                4     if no handle available
  1016.                                6     if handle invalid or not open$
  1017. FUNCTION:      4EH      SEARCH FOR FIRST MATCH  -  ASCIIZ
  1018.  
  1019. DESCRIPTION:   Given an ASCIIZ file specification, searches the default or 
  1020.                specified directory on the default or specified disk drive for 
  1021.                the first matching file; use function 1AH to set the DTA to a 
  1022.                properly sized buffer; use of wild card(s) '*' and '?' 
  1023.                permitted in filename; if specified attribute is hidden (02H), 
  1024.                system (04H) or directory (10H), all normal files are also 
  1025.                searched.
  1026.  
  1027. CALL:          AH = 4EH
  1028.                CX = attribute to use in search
  1029.                DS:DX = Segment:Offset of ASCIIZ file specification
  1030.  
  1031. RETURNS:       if successful
  1032.                   Carry Flag = Clear
  1033.                   DTA filled in as follows
  1034.                         bytes  0 - 20   reserved
  1035.                         byte  21        attribute of matched file
  1036.                         bytes 22 - 23   file time
  1037.                         bytes 24 - 25   file date
  1038.                         bytes 26 - 27   least significant word of size
  1039.                         bytes 28 - 29   most significant word of size
  1040.                         bytes 30 - 42   filename and extension in ASCIIZ format
  1041.        ANY KEY FOR MORE       <F1> - PRIOR MENU             <ESC> TO EXIT@ 
  1042.                if unsuccessful
  1043.                   Carry Flag = Set
  1044.                           AX = error code 
  1045.                                2     if path invalid
  1046.                               12H    if no matching entry found$
  1047. FUNCTION:      4FH      SEARCH FOR NEXT MATCH  -  ASCIIZ
  1048.  
  1049. DESCRIPTION:   Assuming a successful prior call to function 4EH, finds the 
  1050.                next matching file in default or specified directory on the 
  1051.                default or specified disk drive;  DTA must contain information 
  1052.                from prior call to function 4EH.
  1053.  
  1054. CALL:          AH = 4FH
  1055.  
  1056. RETURNS:       if successful
  1057.                   Carry Flag = Clear
  1058.                   DTA filled in as follows
  1059.                         bytes  0 - 20   reserved
  1060.                         byte  21        attribute of matched file
  1061.                         bytes 22 - 23   file time
  1062.                         bytes 24 - 25   file date
  1063.                         bytes 26 - 27   least significant word of size
  1064.                         bytes 28 - 29   most significant word of size
  1065.                         bytes 30 - 42   filename and extension in ASCIIZ format
  1066.                if unsuccessful
  1067.                   Carry Flag = Set
  1068.                           AX = error code 
  1069.                                2     if path invalid
  1070.                               12H    if no matching entry found$
  1071. FUNCTION:      56H      RENAME FILE  - ASCIIZ
  1072.  
  1073. DESCRIPTION:   Renames a file and/or moves its directory entry to a different 
  1074.                directory on the same disk; wild card characters canot be used 
  1075.                in either filename; call will fail if: 1.  Any element of the 
  1076.                path does not exist.  2.  The drive for the new file 
  1077.                specification is different from the old.  3.  The file is being 
  1078.                moved to the root directory and it if full.  4.  A file already 
  1079.                exists with the new path and filename.
  1080.  
  1081. CALL:          AH = 56H
  1082.                DS:DX = Segment:Offset of current ASCIIZ filename
  1083.                ES:DI = Segment:Offset of new ASCIIZ filename
  1084.  
  1085. RETURNS:       if successful
  1086.                   Carry Flag = Clear
  1087.                if unsuccessful
  1088.                   Carry Flag = Set
  1089.                           AX = error code 
  1090.                                2     if file ot found
  1091.                                3     if path not found or file doesn't exist
  1092.                                5     if access denied
  1093.                              11H     if not the same drive$
  1094. FUNCTION:      57H      GET OR SET FILE DATE AND TIME  -  HANDLE
  1095.  
  1096. DESCRIPTION:   Returns or modifies the date and time stamp in a file's
  1097.                directory entry; the file must have been previously opened by a 
  1098.                successful function  - 3CH, 3DH, 5AH OR 5BH.
  1099.  
  1100. CALL:          if getting date
  1101.                AH = 57H
  1102.                AL = 00
  1103.                BX = handle
  1104.                
  1105.                if setting date
  1106.                AH = 57H
  1107.                AL = 01
  1108.                BX = handle
  1109.                CX = time
  1110.                     bits  0BH - 0FH = hours (0 through 23)
  1111.                     bits  05H - 0AH = minutes (0 through 59)
  1112.                     bits  00H - 04H = seconds (# of 2 second increments 0 -29)
  1113.                DX = date
  1114.                     bits  09H - 0FH = year (relative to 1980)
  1115.                     bits  05H - 08H = month (0 through 12)
  1116.                     bits  00H - 04H = day of month (0 through 31)
  1117.                
  1118.        ANY KEY FOR MORE        <F1> - PRIOR MENU            <ESC> TO EXIT@ 
  1119.                
  1120.  
  1121.  
  1122. RETURNS:       if successful
  1123.                         Carry Flag = Clear
  1124.                         if getting time and date
  1125.                                 CX = time (same bit map as above)
  1126.                                 DX = date (same bit map as above)
  1127.                if unsuccessful
  1128.                         Carry Flag = Set
  1129.                                 AX = error code
  1130.                                      1   if invalid function code
  1131.                                      6   if invalid handle$
  1132. FUNCTION:      5AH      CREATE TEMPORARY FILE
  1133.  
  1134. DESCRIPTION:   Creates and opens a temporary file with a unique name in a 
  1135.                specified directory on the current or specified disk drive; 
  1136.                returns the complete file specification of file; file must be 
  1137.                deleted by coding in the calling program; function will fail if 
  1138.                any element of path does not exist or if file specified path is 
  1139.                the root directory, and it is full.
  1140.  
  1141. CALL:          AH = 5AH
  1142.                CX = attribute
  1143.                     00H   normal
  1144.                     01H   read only
  1145.                     02H   hidden
  1146.                     04H   system
  1147.                DS:DX = Segment:Offset of ASCIIZ path specification
  1148.  
  1149.  
  1150.        ANY KEY FOR MORE        <F1> - PRIOR MENU            <ESC> TO EXIT@ 
  1151. RETURNS:       if successful
  1152.                   Carry Flag = Clear
  1153.                     DS:DX = Segment:Offset of complete ASCIIZ file specification
  1154.                if unsuccessful
  1155.                   Carry Flag = Set
  1156.                           AX = error code
  1157.                                3   if path not found
  1158.                                5   if access denied
  1159.                
  1160. SEE ALSO:      Function 3CH and 5BH$
  1161. FUNCTION:      5BH      CREATE NEW FILE
  1162.  
  1163. DESCRIPTION:   Given an ASCIIZ filespec, creates a new file in the designated 
  1164.                or default subdirectory on the designated or default drive; 
  1165.                returns a 16 bit handle to be used for further file operations; 
  1166.                function fails if: 1. Some element of path does not exist.  2.  
  1167.                If the root directory is specified and it is full.  3.  The 
  1168.                specified file already exists in the specified directory.
  1169.  
  1170. CALL:          AH = 5BH
  1171.                CX = attribute
  1172.                     00H   normal
  1173.                     01H   read only
  1174.                     02H   hidden
  1175.                     04H   system
  1176.                DS:DX = Segment:Offset of complete ASCIIZ file specification
  1177.  
  1178. RETURNS:       if successful
  1179.                   Carry Flag = Clear
  1180.  
  1181.  
  1182.        ANY KEY FOR MORE       <F1> - PRIOR MENU             <ESC> TO EXIT@ 
  1183.                if unsuccessful
  1184.                   Carry Flag = Set
  1185.                           AX = error code
  1186.                                3   if path not found
  1187.                                4   if no handle available
  1188.                                5   if access denied
  1189.                              50H   if file already exists
  1190.                
  1191. SEE ALSO:      Function 3CH and 5AH$
  1192.  
  1193.  
  1194.  
  1195.                
  1196.  
  1197.